#ifndef USUARIO_H
#define USUARIO_H
#include <QDjangoModel.h>
#include <QObject>
#include <Entidades/sucursal.h>
#include <Entidades/departamento.h>


class Usuario : public QDjangoModel
{
    Q_OBJECT
    Q_PROPERTY(int id_usuario READ getId_usuario WRITE setId_usuario)
    Q_PROPERTY(int cedula READ getCedula WRITE setCedula)
    Q_PROPERTY(QString nombre READ getNombre  WRITE setNombre)
    Q_PROPERTY(QString apellido READ getApellido WRITE setApellido)
    Q_PROPERTY(QString cargo READ getCargo WRITE setCargo)
    Q_PROPERTY(QString direccion READ getDireccion WRITE setDireccion)
    Q_PROPERTY(QString telefono READ getTelefono WRITE setTelefono)
    Q_PROPERTY(QString correo READ getCorreo WRITE setCorreo)
    Q_PROPERTY(QString nick READ getNick WRITE setNick)
    Q_PROPERTY(QString password READ getPassword WRITE setPassword)
    Q_PROPERTY(bool password_temporal READ getPassword_temporal WRITE setPassword_temporal)
    Q_PROPERTY(Departamento *departamento READ getDepartamento WRITE setDepartamento)
    Q_PROPERTY(QString estado READ getEstado WRITE setEstado)
    Q_CLASSINFO("id_usuario", "primary_key=true")
public:
    explicit Usuario(QObject *parent = 0);

    int getCedula() const;
    void setCedula(int value);

    QString getNombre() const;
    void setNombre(const QString &value);

    QString getApellido() const;
    void setApellido(const QString &value);

    QString getCargo() const;
    void setCargo(const QString &value);

    QString getDireccion() const;
    void setDireccion(const QString &value);

    QString getTelefono() const;
    void setTelefono(const QString &value);

    QString getCorreo() const;
    void setCorreo(const QString &value);

    QString getNick() const;
    void setNick(const QString &value);

    QString getPassword() const;
    void setPassword(const QString &value);

    bool getPassword_temporal() const;
    void setPassword_temporal(const bool &value);

    Departamento *getDepartamento() const;
    void setDepartamento(Departamento *departamento);

    int getId_usuario() const;
    void setId_usuario(int value);

    Sucursal *sucursal;

    QString getEstado() const;
    void setEstado(const QString &value);

private:
    int id_usuario;
    int cedula;
    QString nombre;
    QString apellido;
    QString cargo;
    QString direccion;
    QString telefono;
    QString correo;
    QString nick;
    QString password;
    QString estado;
    bool password_temporal;
};

#endif // USUARIO_H
